package com.css.crm.dao;

import java.util.List;

import com.css.crm.vo.PerformTransactionVo;

/**
 * Interface for DAO on table VP_PERFORM_TXN
 * 
 * @author ais
 * 
 */
public interface PerformTransactionDao extends BaseDao {

	/**
	 * Get Perform Transaction record by primary id
	 * 
	 * @param id
	 *            primary ID to specific record to be retrieved
	 * @return Unique PerformTransaction record
	 */
	PerformTransactionVo getPerformTransactionById(String id);

	/**
	 * Delete PerformTransaction record by primary id
	 * 
	 * @param id
	 *            PerformTransaction id to specific record to be deleted
	 * @return Row count affected
	 */
	int deletePerformTransactionById(String id);

	/**
	 * Create PerformTransaction record
	 * 
	 * @param PerformTransaction
	 *            PerformTransaction object
	 * @return Row count affected
	 */
	int insertPerformTransaction(PerformTransactionVo vo);

	/**
	 * Update PerformTransaction record
	 * 
	 * @param PerformTransaction
	 *            Updated PerformTransactionVo object
	 * @return Row count affected
	 */
	int updatePerformTransaction(PerformTransactionVo vo);

	/**
	 * Get customer record by customer id
	 * 
	 * @param PerformTransactionVo
	 *            Object PerformTransactionVo to specific record to be retrieved
	 * @return Collection PerformTransactionVo record
	 */
	List<PerformTransactionVo> getPerformTransaction(PerformTransactionVo vo);

}
